package com.nopay.dxdwphone.ui.ativity;

import java.util.regex.Matcher;
import java.util.regex.Pattern;


import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;

import com.nopay.dxdwphone.R;

public class CeshiActivty extends AppCompatActivity implements OnClickListener, OnItemSelectedListener {

    private EditText number;
    private String phoneNum;

    private int changeType;

    private Spinner type;

    private Button change, cancle, query;

    private void init() {
        setContentView(R.layout.ceshi);
        number = (EditText) findViewById(R.id.number);
        type = (Spinner) findViewById(R.id.type);
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
                R.array.change_types, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        type.setAdapter(adapter);
        type.setOnItemSelectedListener(this);
        change = (Button) findViewById(R.id.change);
        change.setOnClickListener(this);
        cancle = (Button) findViewById(R.id.cancle);
        cancle.setOnClickListener(this);
        query = (Button) findViewById(R.id.query);
        query.setOnClickListener(this);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        init();
    }

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        phoneNum = number.getText().toString().trim();

        switch (v.getId()) {
            case R.id.change:    //ת��
                if (phoneNum != null && phoneNum.length() > 0) {
                    if (IsValidMobileNo(phoneNum)) {
//                        XXPermissions.with(CeshiActivty.this)
//                                .permission(Permission.CALL_PHONE)
//                                .request(new OnPermissionCallback() {
//
//                                    @Override
//                                    public void onGranted(List<String> permissions, boolean all) {
//                                        if (all) {
//                                            Intent intent = null;
//                                            intent = new Intent();
//                                            intent.setAction(Intent.ACTION_CALL);
//                                            if (changeType == 0) { //始终进行呼叫转移
//                                                intent.setData(Uri.parse("tel:**21*" + phoneNum + "%23"));  //ʼ�ս��к���ת��
//                                            } else if (changeType == 1) { //占线时进行呼叫转移
//                                                intent.setData(Uri.parse("tel:**67*" + phoneNum + "%23"));  //ռ��ʱ���к���ת��
//                                            } else if (changeType == 2) { //无应答时进行呼叫转移
//                                                intent.setData(Uri.parse("tel:**61*" + phoneNum + "%23"));  //��Ӧ��ʱ���к���ת��
//                                            } else if (changeType == 3) { //无法接通时进行呼叫转移
//                                                intent.setData(Uri.parse("tel:**62*" + phoneNum + "%23"));  //�޷���ͨʱ���к���ת��
//                                            }
//                                            startActivity(intent);
//                                        } else {
//                                            ToastUtils.showShort("获取权限失败");
//                                        }
//                                    }
//
//                                    @Override
//                                    public void onDenied(List<String> permissions, boolean never) {
//                                        if (never) {
//                                            // 如果是被永久拒绝就跳转到应用权限系统设置页面
//                                            XXPermissions.startPermissionActivity(CeshiActivty.this, permissions);
//                                        } else {
//                                            ToastUtils.showShort("获取权限失败");
//                                        }
//                                    }
//                                });

                    } else {
                        Toast.makeText(this, getString(R.string.app_name08), Toast.LENGTH_SHORT).show();
                    }
                } else {
                    Toast.makeText(this, getString(R.string.app_name07), Toast.LENGTH_SHORT).show();
                }
                break;
            case R.id.cancle:   //ȡ��
//                XXPermissions.with(CeshiActivty.this)
//                        .permission(Permission.CALL_PHONE)
//                        .request(new OnPermissionCallback() {
//
//                            @Override
//                            public void onGranted(List<String> permissions, boolean all) {
//                                if (all) {
//                                    Intent intent = new Intent();
//                                    intent = new Intent();
//                                    intent.setAction(Intent.ACTION_CALL);
//                                    if (changeType == 0) {
//                                        intent.setData(Uri.parse("tel:%23%2321%23"));
//                                    } else if (changeType == 1) {
//                                        intent.setData(Uri.parse("tel:%23%2367%23"));
//                                    } else if (changeType == 2) {
//                                        intent.setData(Uri.parse("tel:%23%2361%23"));
//                                    } else if (changeType == 3) {
//                                        intent.setData(Uri.parse("tel:%23%2362%23"));
//                                    }
//                                    startActivity(intent);
//                                } else {
//                                    ToastUtils.showShort("获取权限失败");
//                                }
//                            }
//
//                            @Override
//                            public void onDenied(List<String> permissions, boolean never) {
//                                if (never) {
//                                    // 如果是被永久拒绝就跳转到应用权限系统设置页面
//                                    XXPermissions.startPermissionActivity(CeshiActivty.this, permissions);
//                                } else {
//                                    ToastUtils.showShort("获取权限失败");
//                                }
//                            }
//                        });


                break;
            case R.id.query:
//                XXPermissions.with(CeshiActivty.this)
//                        .permission(Permission.CALL_PHONE)
//                        .request(new OnPermissionCallback() {
//
//                            @Override
//                            public void onGranted(List<String> permissions, boolean all) {
//                                if (all) {
//                                    Intent intent = new Intent();
//                                    intent.setAction(Intent.ACTION_CALL);
//                                    if (changeType == 0) {
//                                        intent.setData(Uri.parse("tel:*%2321%23"));
//                                    } else if (changeType == 1) {
//                                        intent.setData(Uri.parse("tel:*%2367%23"));
//                                    } else if (changeType == 2) {
//                                        intent.setData(Uri.parse("tel:*%2361%23"));
//                                    } else if (changeType == 3) {
//                                        intent.setData(Uri.parse("tel:*%2362%23"));
//                                    }
//                                    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//                                    startActivity(intent);
//                                } else {
//                                    ToastUtils.showShort("获取权限失败");
//                                }
//                            }
//
//                            @Override
//                            public void onDenied(List<String> permissions, boolean never) {
//                                if (never) {
//                                    // 如果是被永久拒绝就跳转到应用权限系统设置页面
//                                    XXPermissions.startPermissionActivity(CeshiActivty.this, permissions);
//                                } else {
//                                    ToastUtils.showShort("获取权限失败");
//                                }
//                            }
//                        });
                break;
        }
    }

    public static boolean IsValidMobileNo(String mobiles) {
        Pattern p = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");
        Matcher m = p.matcher(mobiles);
        return m.matches();
    }

    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
        changeType = pos;
        System.out.println("------" + changeType);
    }

    @Override
    public void onNothingSelected(AdapterView<?> arg0) {
        // TODO Auto-generated method stub
    }

}
